package cn.ibdsr.human.constant;

import lombok.Getter;
import lombok.Setter;

/**
 * @author chenglx
 * @version V1.0
 * @description 存入Redis的数据 key 前缀
 * @createDate 2020-03-03 13:53
 * <p>
 * Date Author Description
 * ------------------------------------------------------
 * 2020-03-03 chenglx init
 */
public enum RedisKeyPrefixEnum {

    /**
     * 根据用户的displayId查询用户id
     */
    USER_DISPLAY_ID(24 * 3600, "根据用户的displayId查询用户id"),

    /**
     * 根据用户id查询用户的UserDO
     */
    USER_DO(24 * 3600, "根据用户id查询用户的UserDO"),

    /**
     * 用于向微信服务器请求数据的access token
     */
    WX_ACCESS_TOKEN(7200, "微信服务器的 access token"),

    /**
     * 文章共同编辑的同步锁（锁超时时间目前设为3分钟，即180秒）
     */
    EDIT_LOCK(180, "文章共同编辑的同步锁"),

    ;

    /**
     * time to live, 缓存存活时间（单位：秒。如果小于等于0，Redis将设置无限期）
     */
    @Setter
    @Getter
    private long ttl;

    /**
     * 缓存数据描述
     */
    @Setter
    @Getter
    private String desc;

    RedisKeyPrefixEnum(long ttl, String desc) {
        this.ttl = ttl;
        this.desc = desc;
    }

}
